<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Bluetooth Host Stack Library: Bluetooth Stack Platform Interface</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen_style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><a href="http://www.cypress.com/"><img alt="Logo" src="IFXCYP_one-line.png"/></a></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Bluetooth Host Stack Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('group__wiced__bt__platform__group.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Bluetooth Stack Platform Interface</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">General Description</h2>
<p>Interface between Stack and platform. </p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwiced__bt__stack__platform__t.html">wiced_bt_stack_platform_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">AIROC Bluetooth Stack Platform.  <a href="structwiced__bt__stack__platform__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwiced__bt__smp__adapter__t.html">wiced_bt_smp_adapter_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SMP encryption.  <a href="structwiced__bt__smp__adapter__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwiced__bt__hci__version__info__t.html">wiced_bt_hci_version_info_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Version information for the local Controller.  <a href="structwiced__bt__hci__version__info__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwiced__bt__ble__init__data__t.html">wiced_bt_ble_init_data_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">LE configuration parameters.  <a href="structwiced__bt__ble__init__data__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwiced__bt__dev__init__data__t.html">wiced_bt_dev_init_data_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">device configuration parameters  <a href="structwiced__bt__dev__init__data__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwiced__bt__stack__init__cmd__data__t.html">wiced_bt_stack_init_cmd_data_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">BTSTACK initialization configuration parameters.  <a href="structwiced__bt__stack__init__cmd__data__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gad7c4eff6329333870de39e8e2f24555e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a>&#160;&#160;&#160;0xF000</td></tr>
<tr class="memdesc:gad7c4eff6329333870de39e8e2f24555e"><td class="mdescLeft">&#160;</td><td class="mdescRight">&lt; Stack Exception definitions  <a href="#gad7c4eff6329333870de39e8e2f24555e">More...</a><br /></td></tr>
<tr class="separator:gad7c4eff6329333870de39e8e2f24555e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga14586f9b6afb84249092f7865f89794c"><td class="memItemLeft" align="right" valign="top"><a id="ga14586f9b6afb84249092f7865f89794c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga14586f9b6afb84249092f7865f89794c">CYBT_STACK_BUF_CORRUPTED</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 1</td></tr>
<tr class="memdesc:ga14586f9b6afb84249092f7865f89794c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates a buffer/memory corruption issue. <br /></td></tr>
<tr class="separator:ga14586f9b6afb84249092f7865f89794c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad5000fd36f460ad1530af7df77eb14fc"><td class="memItemLeft" align="right" valign="top"><a id="gad5000fd36f460ad1530af7df77eb14fc"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gad5000fd36f460ad1530af7df77eb14fc">CYBT_STACK_NOT_BUF_OWNER</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 2</td></tr>
<tr class="memdesc:gad5000fd36f460ad1530af7df77eb14fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signifies a lack of buffer ownership by the current process. <br /></td></tr>
<tr class="separator:gad5000fd36f460ad1530af7df77eb14fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7a9c73a44c79aa2af25cbbef9533a59"><td class="memItemLeft" align="right" valign="top"><a id="gaf7a9c73a44c79aa2af25cbbef9533a59"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaf7a9c73a44c79aa2af25cbbef9533a59">CYBT_STACK_FREEBUF_BAD_QID</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 3</td></tr>
<tr class="memdesc:gaf7a9c73a44c79aa2af25cbbef9533a59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Occurs when attempting to free a buffer with an invalid queue ID. <br /></td></tr>
<tr class="separator:gaf7a9c73a44c79aa2af25cbbef9533a59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga36383c153b6f484c1abf7cc759b8a62f"><td class="memItemLeft" align="right" valign="top"><a id="ga36383c153b6f484c1abf7cc759b8a62f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga36383c153b6f484c1abf7cc759b8a62f">CYBT_STACK_FREEBUF_BUF_LINKED</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 4</td></tr>
<tr class="memdesc:ga36383c153b6f484c1abf7cc759b8a62f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Denotes an error with a linked buffer during the free operation. <br /></td></tr>
<tr class="separator:ga36383c153b6f484c1abf7cc759b8a62f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga769b63a0845eb9c6065d13195835dc52"><td class="memItemLeft" align="right" valign="top"><a id="ga769b63a0845eb9c6065d13195835dc52"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga769b63a0845eb9c6065d13195835dc52">CYBT_STACK_SEND_MSG_BAD_DEST</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 5</td></tr>
<tr class="memdesc:ga769b63a0845eb9c6065d13195835dc52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates a bad destination for a message send operation. <br /></td></tr>
<tr class="separator:ga769b63a0845eb9c6065d13195835dc52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9fa11445a461a3faa00852169c892b7d"><td class="memItemLeft" align="right" valign="top"><a id="ga9fa11445a461a3faa00852169c892b7d"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga9fa11445a461a3faa00852169c892b7d">CYBT_STACK_SEND_MSG_BUF_LINKED</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 6</td></tr>
<tr class="memdesc:ga9fa11445a461a3faa00852169c892b7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents an issue with a linked buffer during the message send operation. <br /></td></tr>
<tr class="separator:ga9fa11445a461a3faa00852169c892b7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga631d53fc7fe37512359f89166512d986"><td class="memItemLeft" align="right" valign="top"><a id="ga631d53fc7fe37512359f89166512d986"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga631d53fc7fe37512359f89166512d986">CYBT_STACK_ENQUEUE_BUF_LINKED</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 7</td></tr>
<tr class="memdesc:ga631d53fc7fe37512359f89166512d986"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates a linked buffer error during the enqueue operation. <br /></td></tr>
<tr class="separator:ga631d53fc7fe37512359f89166512d986"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga68690506a281c428b60fda944a2baee9"><td class="memItemLeft" align="right" valign="top"><a id="ga68690506a281c428b60fda944a2baee9"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga68690506a281c428b60fda944a2baee9">CYBT_STACK_DELETE_POOL_BAD_QID</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 8</td></tr>
<tr class="memdesc:ga68690506a281c428b60fda944a2baee9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Occurs when attempting to delete a pool with an invalid queue ID. <br /></td></tr>
<tr class="separator:ga68690506a281c428b60fda944a2baee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab90cfea852c32a92cf06691495dc4a45"><td class="memItemLeft" align="right" valign="top"><a id="gab90cfea852c32a92cf06691495dc4a45"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gab90cfea852c32a92cf06691495dc4a45">CYBT_STACK_BUF_SIZE_TOOBIG</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 9</td></tr>
<tr class="memdesc:gab90cfea852c32a92cf06691495dc4a45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signifies that the buffer size exceeds the maximum allowed size. <br /></td></tr>
<tr class="separator:gab90cfea852c32a92cf06691495dc4a45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7ae780fd3bce27ab8c157d82b926976"><td class="memItemLeft" align="right" valign="top"><a id="gaf7ae780fd3bce27ab8c157d82b926976"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaf7ae780fd3bce27ab8c157d82b926976">CYBT_STACK_BUF_SIZE_ZERO</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 10</td></tr>
<tr class="memdesc:gaf7ae780fd3bce27ab8c157d82b926976"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates an attempt to create a buffer with zero size. <br /></td></tr>
<tr class="separator:gaf7ae780fd3bce27ab8c157d82b926976"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2892cb4b0e7fc3a085ec5bb119994c37"><td class="memItemLeft" align="right" valign="top"><a id="ga2892cb4b0e7fc3a085ec5bb119994c37"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga2892cb4b0e7fc3a085ec5bb119994c37">CYBT_STACK_ADDR_NOT_IN_BUF</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 11</td></tr>
<tr class="memdesc:ga2892cb4b0e7fc3a085ec5bb119994c37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Denotes an address that is not within the buffer range. <br /></td></tr>
<tr class="separator:ga2892cb4b0e7fc3a085ec5bb119994c37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga79caea8a1b7fdfdf482352e63d7c02ce"><td class="memItemLeft" align="right" valign="top"><a id="ga79caea8a1b7fdfdf482352e63d7c02ce"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga79caea8a1b7fdfdf482352e63d7c02ce">CYBT_STACK_OUT_OF_BUFFERS</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 12</td></tr>
<tr class="memdesc:ga79caea8a1b7fdfdf482352e63d7c02ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Occurs when there are no available buffers. <br /></td></tr>
<tr class="separator:ga79caea8a1b7fdfdf482352e63d7c02ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac9ba2b671a00ed62bc41a2b98cda49f2"><td class="memItemLeft" align="right" valign="top"><a id="gac9ba2b671a00ed62bc41a2b98cda49f2"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gac9ba2b671a00ed62bc41a2b98cda49f2">CYBT_STACK_GETPOOLBUF_BAD_QID</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 13</td></tr>
<tr class="memdesc:gac9ba2b671a00ed62bc41a2b98cda49f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signifies an invalid queue ID during the get pool buffer operation. <br /></td></tr>
<tr class="separator:gac9ba2b671a00ed62bc41a2b98cda49f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf1e15b9f02fb6ab41f95f66c1fe4e968"><td class="memItemLeft" align="right" valign="top"><a id="gaf1e15b9f02fb6ab41f95f66c1fe4e968"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaf1e15b9f02fb6ab41f95f66c1fe4e968">CYBT_STACK_POOLBUF_BAD_SIZE</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 14</td></tr>
<tr class="memdesc:gaf1e15b9f02fb6ab41f95f66c1fe4e968"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates an error with the size of the pool buffer. <br /></td></tr>
<tr class="separator:gaf1e15b9f02fb6ab41f95f66c1fe4e968"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1730912a9e3ba93f3bbf5374d329f416"><td class="memItemLeft" align="right" valign="top"><a id="ga1730912a9e3ba93f3bbf5374d329f416"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga1730912a9e3ba93f3bbf5374d329f416">CYBT_STACK_NO_INTERFACE</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 15</td></tr>
<tr class="memdesc:ga1730912a9e3ba93f3bbf5374d329f416"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signifies the absence of a required interface. <br /></td></tr>
<tr class="separator:ga1730912a9e3ba93f3bbf5374d329f416"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaae1ebe01efaffcefd00991908140251"><td class="memItemLeft" align="right" valign="top"><a id="gaaae1ebe01efaffcefd00991908140251"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaaae1ebe01efaffcefd00991908140251">CYBT_STACK_BAD_TRANSPORT</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 16</td></tr>
<tr class="memdesc:gaaae1ebe01efaffcefd00991908140251"><td class="mdescLeft">&#160;</td><td class="mdescRight">Denotes a problem with the transport assignement (BLE / BREDR) <br /></td></tr>
<tr class="separator:gaaae1ebe01efaffcefd00991908140251"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c485757e2cf861d4f7f11c7844389cf"><td class="memItemLeft" align="right" valign="top"><a id="ga7c485757e2cf861d4f7f11c7844389cf"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga7c485757e2cf861d4f7f11c7844389cf">CYBT_STACK_NO_MEMORY</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 17</td></tr>
<tr class="memdesc:ga7c485757e2cf861d4f7f11c7844389cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates a memory allocation failure. <br /></td></tr>
<tr class="separator:ga7c485757e2cf861d4f7f11c7844389cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab8a32b0761b97b7c102774d45ce20d42"><td class="memItemLeft" align="right" valign="top"><a id="gab8a32b0761b97b7c102774d45ce20d42"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gab8a32b0761b97b7c102774d45ce20d42">CYBT_STACK_NO_BUF</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gad7c4eff6329333870de39e8e2f24555e">CYBT_STACK_BASE_EXCEPTION</a> + 18</td></tr>
<tr class="memdesc:gab8a32b0761b97b7c102774d45ce20d42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Represents the absence of available buffers. <br /></td></tr>
<tr class="separator:gab8a32b0761b97b7c102774d45ce20d42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1a928930460ca3010e35f78cd8ea6440"><td class="memItemLeft" align="right" valign="top"><a id="ga1a928930460ca3010e35f78cd8ea6440"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga1a928930460ca3010e35f78cd8ea6440">CYBT_STACK_MAX_EXCEPTION</a>&#160;&#160;&#160;<a class="el" href="group__wiced__bt__platform__group.html#gab8a32b0761b97b7c102774d45ce20d42">CYBT_STACK_NO_BUF</a> + 1</td></tr>
<tr class="memdesc:ga1a928930460ca3010e35f78cd8ea6440"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stack MAX exception. <br /></td></tr>
<tr class="separator:ga1a928930460ca3010e35f78cd8ea6440"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga7f85f07f930fed2fc50e855a69e7abcd"><td class="memItemLeft" align="right" valign="top"><a id="ga7f85f07f930fed2fc50e855a69e7abcd"></a>
typedef struct _aes_context_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga7f85f07f930fed2fc50e855a69e7abcd">aes_context</a></td></tr>
<tr class="memdesc:ga7f85f07f930fed2fc50e855a69e7abcd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Forward definition. <br /></td></tr>
<tr class="separator:ga7f85f07f930fed2fc50e855a69e7abcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaee366da383e708d1dea13b16cbba1e5"><td class="memItemLeft" align="right" valign="top"><a id="gaaee366da383e708d1dea13b16cbba1e5"></a>
typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaaee366da383e708d1dea13b16cbba1e5">wiced_bt_internal_post_stack_init_cb</a>) (void)</td></tr>
<tr class="memdesc:gaaee366da383e708d1dea13b16cbba1e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function prototype for the post Stack Init Callback. <br /></td></tr>
<tr class="separator:gaaee366da383e708d1dea13b16cbba1e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1b2ab26fed7589a50fad5ecc0cc6f1d3"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="group__gentypes.html#ga2bc92bd117cfd3f6ec4ae452e6ced064">wiced_bool_t</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga1b2ab26fed7589a50fad5ecc0cc6f1d3">wiced_bt_internal_stack_evt_handler_cb</a>) (uint8_t *p_event)</td></tr>
<tr class="memdesc:ga1b2ab26fed7589a50fad5ecc0cc6f1d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function prototype for the HCI event monitor function that the application may suppply.  <a href="#ga1b2ab26fed7589a50fad5ecc0cc6f1d3">More...</a><br /></td></tr>
<tr class="separator:ga1b2ab26fed7589a50fad5ecc0cc6f1d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga91ec048a4f0938e38123ccd86b267b49"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga91ec048a4f0938e38123ccd86b267b49">wiced_bt_stack_platform_initialize</a> (<a class="el" href="structwiced__bt__stack__platform__t.html">wiced_bt_stack_platform_t</a> *platform_interfaces)</td></tr>
<tr class="memdesc:ga91ec048a4f0938e38123ccd86b267b49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the platform interfaces, by providing porting functions specific to the underlying platform.  <a href="#ga91ec048a4f0938e38123ccd86b267b49">More...</a><br /></td></tr>
<tr class="separator:ga91ec048a4f0938e38123ccd86b267b49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga98a0933baa000767bc3ad60d0a7890e3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga98a0933baa000767bc3ad60d0a7890e3">wiced_bt_process_acl_data</a> (uint8_t *pData, uint32_t length)</td></tr>
<tr class="memdesc:ga98a0933baa000767bc3ad60d0a7890e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to process the incoming ACL data received from the remote bluetooth device.  <a href="#ga98a0933baa000767bc3ad60d0a7890e3">More...</a><br /></td></tr>
<tr class="separator:ga98a0933baa000767bc3ad60d0a7890e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4e569527f83bc2d6f443ef3ae0f83ece"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga4e569527f83bc2d6f443ef3ae0f83ece">wiced_bt_process_hci_events</a> (uint8_t *pData, uint32_t length)</td></tr>
<tr class="memdesc:ga4e569527f83bc2d6f443ef3ae0f83ece"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to process the incoming HCI events from the local bluetooth controller.  <a href="#ga4e569527f83bc2d6f443ef3ae0f83ece">More...</a><br /></td></tr>
<tr class="separator:ga4e569527f83bc2d6f443ef3ae0f83ece"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3e08857799934c4e9eb3108e16cc95e1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga3e08857799934c4e9eb3108e16cc95e1">wiced_bt_process_sco_data</a> (uint8_t *pData, uint32_t length)</td></tr>
<tr class="memdesc:ga3e08857799934c4e9eb3108e16cc95e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to process the incoming SCO data received from the remote bluetooth device.  <a href="#ga3e08857799934c4e9eb3108e16cc95e1">More...</a><br /></td></tr>
<tr class="separator:ga3e08857799934c4e9eb3108e16cc95e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9655dc8f977b3d51d80c07d69c17352c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga9655dc8f977b3d51d80c07d69c17352c">wiced_bt_process_isoc_data</a> (uint8_t *pData, uint32_t length)</td></tr>
<tr class="memdesc:ga9655dc8f977b3d51d80c07d69c17352c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to process the incoming ISOC data received from the remote bluetooth device.  <a href="#ga9655dc8f977b3d51d80c07d69c17352c">More...</a><br /></td></tr>
<tr class="separator:ga9655dc8f977b3d51d80c07d69c17352c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad0cd082b2d2e5c54b077d3e7aafcbc48"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gad0cd082b2d2e5c54b077d3e7aafcbc48">wiced_bt_process_timer</a> (void)</td></tr>
<tr class="memdesc:gad0cd082b2d2e5c54b077d3e7aafcbc48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer on expiry of the timer to process pending timers.  <a href="#gad0cd082b2d2e5c54b077d3e7aafcbc48">More...</a><br /></td></tr>
<tr class="separator:gad0cd082b2d2e5c54b077d3e7aafcbc48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa98ea87121fed670412f976b3f0b252c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaa98ea87121fed670412f976b3f0b252c">wiced_bt_stack_indicate_lower_tx_complete</a> (void)</td></tr>
<tr class="memdesc:gaa98ea87121fed670412f976b3f0b252c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the lower layer transport driver to restart sending ACL data to the controller Note: Porting layer API.  <a href="#gaa98ea87121fed670412f976b3f0b252c">More...</a><br /></td></tr>
<tr class="separator:gaa98ea87121fed670412f976b3f0b252c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gade7b4741a97ade2e02e044078bf46bc2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gade7b4741a97ade2e02e044078bf46bc2">wiced_bt_continue_reset</a> (void)</td></tr>
<tr class="memdesc:gade7b4741a97ade2e02e044078bf46bc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to complete/continue the reset process Typically called after downloading firmware patches to the controller.  <a href="#gade7b4741a97ade2e02e044078bf46bc2">More...</a><br /></td></tr>
<tr class="separator:gade7b4741a97ade2e02e044078bf46bc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaedb4a439d3f91abba89b33c1e0947991"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaedb4a439d3f91abba89b33c1e0947991">wiced_bt_set_stack_config</a> (const <a class="el" href="structwiced__bt__cfg__settings__t.html">wiced_bt_cfg_settings_t</a> *p_bt_new_cfg_settings)</td></tr>
<tr class="memdesc:gaedb4a439d3f91abba89b33c1e0947991"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the stack config.  <a href="#gaedb4a439d3f91abba89b33c1e0947991">More...</a><br /></td></tr>
<tr class="separator:gaedb4a439d3f91abba89b33c1e0947991"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga689ab04553ee3f89d77981c45192ea57"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structwiced__bt__cfg__settings__t.html">wiced_bt_cfg_settings_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga689ab04553ee3f89d77981c45192ea57">wiced_bt_get_stack_config</a> (void)</td></tr>
<tr class="memdesc:ga689ab04553ee3f89d77981c45192ea57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the stack config set by the application.  <a href="#ga689ab04553ee3f89d77981c45192ea57">More...</a><br /></td></tr>
<tr class="separator:ga689ab04553ee3f89d77981c45192ea57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac40dc0f89a01ca8b864c49a9a740786f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gac40dc0f89a01ca8b864c49a9a740786f">wiced_bt_stack_init_internal</a> (<a class="el" href="group__wicedbt___device_management.html#ga86af8a8bb467047c9af6007f15b0d344">wiced_bt_management_cback_t</a> mgmt_cback, <a class="el" href="group__wiced__bt__platform__group.html#gaaee366da383e708d1dea13b16cbba1e5">wiced_bt_internal_post_stack_init_cb</a> post_stack_cb, <a class="el" href="group__wiced__bt__platform__group.html#ga1b2ab26fed7589a50fad5ecc0cc6f1d3">wiced_bt_internal_stack_evt_handler_cb</a> evt_handler_cb)</td></tr>
<tr class="memdesc:gac40dc0f89a01ca8b864c49a9a740786f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal stack init.  <a href="#gac40dc0f89a01ca8b864c49a9a740786f">More...</a><br /></td></tr>
<tr class="separator:gac40dc0f89a01ca8b864c49a9a740786f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8a424e7de59385dc69b3189987c3fae2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga8a424e7de59385dc69b3189987c3fae2">wiced_bt_stack_shutdown</a> (void)</td></tr>
<tr class="memdesc:ga8a424e7de59385dc69b3189987c3fae2"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function blocks until all de-initialisation procedures are complete.  <a href="#ga8a424e7de59385dc69b3189987c3fae2">More...</a><br /></td></tr>
<tr class="separator:ga8a424e7de59385dc69b3189987c3fae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafc1b5d34eef77e8e432e3f070ce92709"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gafc1b5d34eef77e8e432e3f070ce92709">wiced_bt_set_stack_initial_setup_data</a> (<a class="el" href="structwiced__bt__stack__init__cmd__data__t.html">wiced_bt_stack_init_cmd_data_t</a> *p_init_setup_data)</td></tr>
<tr class="memdesc:gafc1b5d34eef77e8e432e3f070ce92709"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the initial setup data to configure the stack.  <a href="#gafc1b5d34eef77e8e432e3f070ce92709">More...</a><br /></td></tr>
<tr class="separator:gafc1b5d34eef77e8e432e3f070ce92709"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa5efa37a135721ba7c58fcb6ec6f0b04"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaa5efa37a135721ba7c58fcb6ec6f0b04">wiced_bt_enable_stack_default_flow</a> (void)</td></tr>
<tr class="memdesc:gaa5efa37a135721ba7c58fcb6ec6f0b04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to enable the stack to send the initial setup commands(refer Version 5.4 | Vol 6, Part D 2.1 INITIAL SETUP) to the controller.  <a href="#gaa5efa37a135721ba7c58fcb6ec6f0b04">More...</a><br /></td></tr>
<tr class="separator:gaa5efa37a135721ba7c58fcb6ec6f0b04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5206a08f08b9a21a75c61fbf5df58d0d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga5206a08f08b9a21a75c61fbf5df58d0d">wiced_bt_platform_set_smp_adapter</a> (const <a class="el" href="structwiced__bt__smp__adapter__t.html">wiced_bt_smp_adapter_t</a> *p_smp_adapter)</td></tr>
<tr class="memdesc:ga5206a08f08b9a21a75c61fbf5df58d0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to set platform specific or custom SMP encryption.  <a href="#ga5206a08f08b9a21a75c61fbf5df58d0d">More...</a><br /></td></tr>
<tr class="separator:ga5206a08f08b9a21a75c61fbf5df58d0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3997e1d79714e78d2c13d60f3a698911"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga3997e1d79714e78d2c13d60f3a698911">wiced_bt_set_default_smp_adapter</a> (void)</td></tr>
<tr class="memdesc:ga3997e1d79714e78d2c13d60f3a698911"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the porting layer to set default SMP encryption.  <a href="#ga3997e1d79714e78d2c13d60f3a698911">More...</a><br /></td></tr>
<tr class="separator:ga3997e1d79714e78d2c13d60f3a698911"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf059de81cbbe4c5ce5872eed1cc6e32c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaf059de81cbbe4c5ce5872eed1cc6e32c">wiced_ble_read_local_identity_keys_from_app</a> (<a class="el" href="structwiced__bt__local__identity__keys__t.html">wiced_bt_local_identity_keys_t</a> *p_local_keys)</td></tr>
<tr class="memdesc:gaf059de81cbbe4c5ce5872eed1cc6e32c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by porting layer to get the stored local keys from the app.  <a href="#gaf059de81cbbe4c5ce5872eed1cc6e32c">More...</a><br /></td></tr>
<tr class="separator:gaf059de81cbbe4c5ce5872eed1cc6e32c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafbef049d9e806795cc708d94db01c8dc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gafbef049d9e806795cc708d94db01c8dc">wiced_ble_create_local_identity_keys</a> (void)</td></tr>
<tr class="memdesc:gafbef049d9e806795cc708d94db01c8dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new local keys to be used for device privacy The new local keys generated are returned to the application in <a class="el" href="group__wicedbt___device_management.html#gga4a427fc37161f2041016d7936399be65a23fd1bf3adec01af60774f947bc4c811">BTM_LOCAL_IDENTITY_KEYS_UPDATE_EVT</a> The porting layer can start, Controller based address resolution with <a class="el" href="group__wiced__bt__platform__group.html#ga8260ebc21406a676e29a7081a7382494">wiced_ble_init_ctlr_private_addr_generation</a> or Host based address resolution with <a class="el" href="group__wiced__bt__platform__group.html#gaf3b4675291634b72041597e29d93904e">wiced_ble_init_host_private_addr_generation</a>.  <a href="#gafbef049d9e806795cc708d94db01c8dc">More...</a><br /></td></tr>
<tr class="separator:gafbef049d9e806795cc708d94db01c8dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf3b4675291634b72041597e29d93904e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#gaf3b4675291634b72041597e29d93904e">wiced_ble_init_host_private_addr_generation</a> (<a class="el" href="structwiced__bt__local__identity__keys__t.html">wiced_bt_local_identity_keys_t</a> *p_local_keys)</td></tr>
<tr class="memdesc:gaf3b4675291634b72041597e29d93904e"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to write back saved local keys and init host based address generation.  <a href="#gaf3b4675291634b72041597e29d93904e">More...</a><br /></td></tr>
<tr class="separator:gaf3b4675291634b72041597e29d93904e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8260ebc21406a676e29a7081a7382494"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga8260ebc21406a676e29a7081a7382494">wiced_ble_init_ctlr_private_addr_generation</a> (<a class="el" href="structwiced__bt__local__identity__keys__t.html">wiced_bt_local_identity_keys_t</a> *p_local_keys)</td></tr>
<tr class="memdesc:ga8260ebc21406a676e29a7081a7382494"><td class="mdescLeft">&#160;</td><td class="mdescRight">API to write back saved local keys and controller based address generation.  <a href="#ga8260ebc21406a676e29a7081a7382494">More...</a><br /></td></tr>
<tr class="separator:ga8260ebc21406a676e29a7081a7382494"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga06ed01c337bcb03e8007710ae9b625fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__gentypes.html#ga2bc92bd117cfd3f6ec4ae452e6ced064">wiced_bool_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga06ed01c337bcb03e8007710ae9b625fe">wiced_bt_issue_btm_enabled_evt</a> (<a class="el" href="group__wicedbt___device_management.html#ga86af8a8bb467047c9af6007f15b0d344">wiced_bt_management_cback_t</a> p_app_management_callback)</td></tr>
<tr class="memdesc:ga06ed01c337bcb03e8007710ae9b625fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper API to issue BTM_ENABLED_EVT.  <a href="#ga06ed01c337bcb03e8007710ae9b625fe">More...</a><br /></td></tr>
<tr class="separator:ga06ed01c337bcb03e8007710ae9b625fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1be12efe2fb24bf0575f5c1b04e298a7"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wiced__bt__platform__group.html#ga1be12efe2fb24bf0575f5c1b04e298a7">wiced_bt_get_btm_startup_flags</a> (void)</td></tr>
<tr class="memdesc:ga1be12efe2fb24bf0575f5c1b04e298a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper API to get the startup flags.  <a href="#ga1be12efe2fb24bf0575f5c1b04e298a7">More...</a><br /></td></tr>
<tr class="separator:ga1be12efe2fb24bf0575f5c1b04e298a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="gad7c4eff6329333870de39e8e2f24555e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad7c4eff6329333870de39e8e2f24555e">&#9670;&nbsp;</a></span>CYBT_STACK_BASE_EXCEPTION</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CYBT_STACK_BASE_EXCEPTION&#160;&#160;&#160;0xF000</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>&lt; Stack Exception definitions </p>
<p>Stack BASE exception </p>

</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="ga1b2ab26fed7589a50fad5ecc0cc6f1d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1b2ab26fed7589a50fad5ecc0cc6f1d3">&#9670;&nbsp;</a></span>wiced_bt_internal_stack_evt_handler_cb</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="group__gentypes.html#ga2bc92bd117cfd3f6ec4ae452e6ced064">wiced_bool_t</a>(* wiced_bt_internal_stack_evt_handler_cb) (uint8_t *p_event)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Function prototype for the HCI event monitor function that the application may suppply. </p>
<p>The application MUST return TRUE if the it handled the event and does not want the stack to process the event. If the application returns FALSE, the stack will process the event. </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga91ec048a4f0938e38123ccd86b267b49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga91ec048a4f0938e38123ccd86b267b49">&#9670;&nbsp;</a></span>wiced_bt_stack_platform_initialize()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_bt_stack_platform_initialize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structwiced__bt__stack__platform__t.html">wiced_bt_stack_platform_t</a> *&#160;</td>
          <td class="paramname"><em>platform_interfaces</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Initialize the platform interfaces, by providing porting functions specific to the underlying platform. </p>
<dl class="section return"><dt>Returns</dt><dd><b> WICED_BT_SUCCESS </b> : on success; <br />
 <b> WICED_BT_ERROR </b> : if an error occurred </dd></dl>

</div>
</div>
<a id="ga98a0933baa000767bc3ad60d0a7890e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga98a0933baa000767bc3ad60d0a7890e3">&#9670;&nbsp;</a></span>wiced_bt_process_acl_data()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_process_acl_data </td>
          <td>(</td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>pData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to process the incoming ACL data received from the remote bluetooth device. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pData</td><td>: Pointer to the ACL data to be processed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>: Length of the ACL data buffer</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

</div>
</div>
<a id="ga4e569527f83bc2d6f443ef3ae0f83ece"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga4e569527f83bc2d6f443ef3ae0f83ece">&#9670;&nbsp;</a></span>wiced_bt_process_hci_events()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_process_hci_events </td>
          <td>(</td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>pData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to process the incoming HCI events from the local bluetooth controller. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pData</td><td>: Pointer to the HCI Events to be processed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>: Length of the event buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

</div>
</div>
<a id="ga3e08857799934c4e9eb3108e16cc95e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3e08857799934c4e9eb3108e16cc95e1">&#9670;&nbsp;</a></span>wiced_bt_process_sco_data()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_process_sco_data </td>
          <td>(</td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>pData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to process the incoming SCO data received from the remote bluetooth device. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pData</td><td>: Pointer to the SCO data to be processed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>: Length of the SCO data buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

</div>
</div>
<a id="ga9655dc8f977b3d51d80c07d69c17352c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9655dc8f977b3d51d80c07d69c17352c">&#9670;&nbsp;</a></span>wiced_bt_process_isoc_data()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_process_isoc_data </td>
          <td>(</td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>pData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to process the incoming ISOC data received from the remote bluetooth device. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pData</td><td>: Pointer to the ISOC data to be processed </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>: Length of the ISOC data buffer </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

</div>
</div>
<a id="gad0cd082b2d2e5c54b077d3e7aafcbc48"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gad0cd082b2d2e5c54b077d3e7aafcbc48">&#9670;&nbsp;</a></span>wiced_bt_process_timer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_process_timer </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer on expiry of the timer to process pending timers. </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

</div>
</div>
<a id="gaa98ea87121fed670412f976b3f0b252c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa98ea87121fed670412f976b3f0b252c">&#9670;&nbsp;</a></span>wiced_bt_stack_indicate_lower_tx_complete()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_stack_indicate_lower_tx_complete </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the lower layer transport driver to restart sending ACL data to the controller Note: Porting layer API. </p>
<p>This API is expected to be invoked by the lower layer transport driver, to restart transfers from the stack to the controller. The lower tx layer is expected to have space for atleast one complete ACL buffer Typically used in cases where the lower Tx has lesser number of buffers than allowed by controller </p>

</div>
</div>
<a id="gade7b4741a97ade2e02e044078bf46bc2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gade7b4741a97ade2e02e044078bf46bc2">&#9670;&nbsp;</a></span>wiced_bt_continue_reset()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_continue_reset </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to complete/continue the reset process Typically called after downloading firmware patches to the controller. </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

</div>
</div>
<a id="gaedb4a439d3f91abba89b33c1e0947991"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaedb4a439d3f91abba89b33c1e0947991">&#9670;&nbsp;</a></span>wiced_bt_set_stack_config()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t wiced_bt_set_stack_config </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structwiced__bt__cfg__settings__t.html">wiced_bt_cfg_settings_t</a> *&#160;</td>
          <td class="paramname"><em>p_bt_new_cfg_settings</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the stack config. </p>
<p>Invoked by the porting layer</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_bt_new_cfg_settings</td><td>: Stack configuration settings</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 if there is any error in the configuration otherwise the dynamic memory size requirements of the stack for the configuration. </dd></dl>

</div>
</div>
<a id="ga689ab04553ee3f89d77981c45192ea57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga689ab04553ee3f89d77981c45192ea57">&#9670;&nbsp;</a></span>wiced_bt_get_stack_config()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structwiced__bt__cfg__settings__t.html">wiced_bt_cfg_settings_t</a>* wiced_bt_get_stack_config </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the stack config set by the application. </p>
<dl class="section return"><dt>Returns</dt><dd>pointer to application config settings </dd></dl>

</div>
</div>
<a id="gac40dc0f89a01ca8b864c49a9a740786f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac40dc0f89a01ca8b864c49a9a740786f">&#9670;&nbsp;</a></span>wiced_bt_stack_init_internal()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_stack_init_internal </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__wicedbt___device_management.html#ga86af8a8bb467047c9af6007f15b0d344">wiced_bt_management_cback_t</a>&#160;</td>
          <td class="paramname"><em>mgmt_cback</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__wiced__bt__platform__group.html#gaaee366da383e708d1dea13b16cbba1e5">wiced_bt_internal_post_stack_init_cb</a>&#160;</td>
          <td class="paramname"><em>post_stack_cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__wiced__bt__platform__group.html#ga1b2ab26fed7589a50fad5ecc0cc6f1d3">wiced_bt_internal_stack_evt_handler_cb</a>&#160;</td>
          <td class="paramname"><em>evt_handler_cb</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Internal stack init. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mgmt_cback</td><td>: Application Bluetooth Management callback </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">post_stack_cb</td><td>: Internal post stack init callback </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">evt_handler_cb</td><td>: Internal stack event handler</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Dynamic memory size requirements of the stack for the configuration </dd></dl>

</div>
</div>
<a id="ga8a424e7de59385dc69b3189987c3fae2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8a424e7de59385dc69b3189987c3fae2">&#9670;&nbsp;</a></span>wiced_bt_stack_shutdown()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_stack_shutdown </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function blocks until all de-initialisation procedures are complete. </p>
<p>It is recommended that the application disconnect any outstanding connections prior to invoking this function.</p>
<dl class="section return"><dt>Returns</dt><dd>None </dd></dl>

</div>
</div>
<a id="gafc1b5d34eef77e8e432e3f070ce92709"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafc1b5d34eef77e8e432e3f070ce92709">&#9670;&nbsp;</a></span>wiced_bt_set_stack_initial_setup_data()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_bt_set_stack_initial_setup_data </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structwiced__bt__stack__init__cmd__data__t.html">wiced_bt_stack_init_cmd_data_t</a> *&#160;</td>
          <td class="paramname"><em>p_init_setup_data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the initial setup data to configure the stack. </p>
<p>Invoked by the porting layer</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_init_setup_data</td><td>: intial setup data</td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Call this API if want to reduce the stack size. This API needs to be invoked prior to <a class="el" href="group__wiced__bt__platform__group.html#gac40dc0f89a01ca8b864c49a9a740786f">wiced_bt_stack_init_internal</a> API. Do not call API <a class="el" href="group__wiced__bt__platform__group.html#gaa5efa37a135721ba7c58fcb6ec6f0b04">wiced_bt_enable_stack_default_flow</a> if calling this API.</dd></dl>
<dl class="section return"><dt>Returns</dt><dd>wiced_result_t WICED_SUCCESS if Success. WICED_BADARG if called with NULL arguement. </dd></dl>

</div>
</div>
<a id="gaa5efa37a135721ba7c58fcb6ec6f0b04"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaa5efa37a135721ba7c58fcb6ec6f0b04">&#9670;&nbsp;</a></span>wiced_bt_enable_stack_default_flow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void wiced_bt_enable_stack_default_flow </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to enable the stack to send the initial setup commands(refer Version 5.4 | Vol 6, Part D 2.1 INITIAL SETUP) to the controller. </p>
<dl class="section note"><dt>Note</dt><dd>Call this API if required to get the intial setup information from the controller. Do not call API <a class="el" href="group__wiced__bt__platform__group.html#gafc1b5d34eef77e8e432e3f070ce92709">wiced_bt_set_stack_initial_setup_data</a> if calling this API.<br />
This API needs to be invoked prior to <a class="el" href="group__wiced__bt__platform__group.html#gac40dc0f89a01ca8b864c49a9a740786f">wiced_bt_stack_init_internal</a> API. </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>

</div>
</div>
<a id="ga5206a08f08b9a21a75c61fbf5df58d0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga5206a08f08b9a21a75c61fbf5df58d0d">&#9670;&nbsp;</a></span>wiced_bt_platform_set_smp_adapter()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_bt_platform_set_smp_adapter </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structwiced__bt__smp__adapter__t.html">wiced_bt_smp_adapter_t</a> *&#160;</td>
          <td class="paramname"><em>p_smp_adapter</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to set platform specific or custom SMP encryption. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_smp_adapter</td><td>: SMP Adaptor configurations and callbacks</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><b> WICED_SUCCESS </b> : on success; <br />
 <b> WICED_ERROR </b> : if an error occurred </dd></dl>

</div>
</div>
<a id="ga3997e1d79714e78d2c13d60f3a698911"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga3997e1d79714e78d2c13d60f3a698911">&#9670;&nbsp;</a></span>wiced_bt_set_default_smp_adapter()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_bt_set_default_smp_adapter </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by the porting layer to set default SMP encryption. </p>
<dl class="section return"><dt>Returns</dt><dd><b> WICED_SUCCESS </b> : on success; <br />
 <b> WICED_ERROR </b> : if an error occurred </dd></dl>

</div>
</div>
<a id="gaf059de81cbbe4c5ce5872eed1cc6e32c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf059de81cbbe4c5ce5872eed1cc6e32c">&#9670;&nbsp;</a></span>wiced_ble_read_local_identity_keys_from_app()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_ble_read_local_identity_keys_from_app </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structwiced__bt__local__identity__keys__t.html">wiced_bt_local_identity_keys_t</a> *&#160;</td>
          <td class="paramname"><em>p_local_keys</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Called by porting layer to get the stored local keys from the app. </p>
<p>If application returns WICED_SUCCESS, the keys are written to the stack to start Controller based address resolution with <a class="el" href="group__wiced__bt__platform__group.html#ga8260ebc21406a676e29a7081a7382494">wiced_ble_init_ctlr_private_addr_generation</a> or Host based address resolution with <a class="el" href="group__wiced__bt__platform__group.html#gaf3b4675291634b72041597e29d93904e">wiced_ble_init_host_private_addr_generation</a> Else, <a class="el" href="group__wiced__bt__platform__group.html#gafbef049d9e806795cc708d94db01c8dc">wiced_ble_create_local_identity_keys</a> call needs to be invoked </p>

</div>
</div>
<a id="gafbef049d9e806795cc708d94db01c8dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gafbef049d9e806795cc708d94db01c8dc">&#9670;&nbsp;</a></span>wiced_ble_create_local_identity_keys()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_ble_create_local_identity_keys </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create new local keys to be used for device privacy The new local keys generated are returned to the application in <a class="el" href="group__wicedbt___device_management.html#gga4a427fc37161f2041016d7936399be65a23fd1bf3adec01af60774f947bc4c811">BTM_LOCAL_IDENTITY_KEYS_UPDATE_EVT</a> The porting layer can start, Controller based address resolution with <a class="el" href="group__wiced__bt__platform__group.html#ga8260ebc21406a676e29a7081a7382494">wiced_ble_init_ctlr_private_addr_generation</a> or Host based address resolution with <a class="el" href="group__wiced__bt__platform__group.html#gaf3b4675291634b72041597e29d93904e">wiced_ble_init_host_private_addr_generation</a>. </p>
<dl class="section return"><dt>Returns</dt><dd>wiced_result_t </dd></dl>

</div>
</div>
<a id="gaf3b4675291634b72041597e29d93904e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaf3b4675291634b72041597e29d93904e">&#9670;&nbsp;</a></span>wiced_ble_init_host_private_addr_generation()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_ble_init_host_private_addr_generation </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structwiced__bt__local__identity__keys__t.html">wiced_bt_local_identity_keys_t</a> *&#160;</td>
          <td class="paramname"><em>p_local_keys</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to write back saved local keys and init host based address generation. </p>
<p>The local keys sent down in this call are used to generate the local RPA (Resolvable Private Address). The RPA generated is required to be refreshed periodically by the host based on the suggested <a class="el" href="structwiced__bt__cfg__ble__t.html#a4fa95b2aafb296e0adced091399f2236">wiced_bt_cfg_ble_t::rpa_refresh_timeout</a> member of <a class="el" href="structwiced__bt__cfg__settings__t.html#a3b6e440bf2a528a1126b81d8f1b5684a" title="LE related configuration.">wiced_bt_cfg_settings_t.p_ble_cfg</a></p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_local_keys</td><td>: device local keys generated from a previous call to <a class="el" href="group__wiced__bt__platform__group.html#gafbef049d9e806795cc708d94db01c8dc">wiced_ble_create_local_identity_keys</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>wiced_result_t </dd></dl>

</div>
</div>
<a id="ga8260ebc21406a676e29a7081a7382494"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga8260ebc21406a676e29a7081a7382494">&#9670;&nbsp;</a></span>wiced_ble_init_ctlr_private_addr_generation()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group___result.html#gacfc32ead8a827d53416f01b19eb58310">wiced_result_t</a> wiced_ble_init_ctlr_private_addr_generation </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structwiced__bt__local__identity__keys__t.html">wiced_bt_local_identity_keys_t</a> *&#160;</td>
          <td class="paramname"><em>p_local_keys</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>API to write back saved local keys and controller based address generation. </p>
<p>The local keys sent down in this call are used to generate the local RPA (Resolvable Private Address). The RPA generated is required to be refreshed periodically by the controller based on the suggested <a class="el" href="structwiced__bt__cfg__ble__t.html#a4fa95b2aafb296e0adced091399f2236">wiced_bt_cfg_ble_t::rpa_refresh_timeout</a> member of <a class="el" href="structwiced__bt__cfg__settings__t.html#a3b6e440bf2a528a1126b81d8f1b5684a" title="LE related configuration.">wiced_bt_cfg_settings_t.p_ble_cfg</a></p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">p_local_keys</td><td>: device local keys generated from a previous call to <a class="el" href="group__wiced__bt__platform__group.html#gafbef049d9e806795cc708d94db01c8dc">wiced_ble_create_local_identity_keys</a></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>wiced_result_t </dd></dl>

</div>
</div>
<a id="ga06ed01c337bcb03e8007710ae9b625fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga06ed01c337bcb03e8007710ae9b625fe">&#9670;&nbsp;</a></span>wiced_bt_issue_btm_enabled_evt()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__gentypes.html#ga2bc92bd117cfd3f6ec4ae452e6ced064">wiced_bool_t</a> wiced_bt_issue_btm_enabled_evt </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__wicedbt___device_management.html#ga86af8a8bb467047c9af6007f15b0d344">wiced_bt_management_cback_t</a>&#160;</td>
          <td class="paramname"><em>p_app_management_callback</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Helper API to issue BTM_ENABLED_EVT. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">p_app_management_callback</td><td>Management callback set by the application </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga1be12efe2fb24bf0575f5c1b04e298a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1be12efe2fb24bf0575f5c1b04e298a7">&#9670;&nbsp;</a></span>wiced_bt_get_btm_startup_flags()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t wiced_bt_get_btm_startup_flags </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Helper API to get the startup flags. </p>
<dl class="section return"><dt>Returns</dt><dd>uint32_t value </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath">
    <ul>
        <li class="footer">
            Generated for <b>Bluetooth Host Stack Library</b> by <b>Cypress Semiconductor Corporation</b>.
            All rights reserved.
        </li>
    </ul>
</div>
</body>
</html>
